<?php

namespace app\home\controller;

use think\Controller;
use think\Request;

class Test extends Controller
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */
    public function index()
    {
        //cookie中存储购物车数据
        /*$list=[
        	['goods_id'=>100,'spec_goods_id'=>210,'number'=>10,'is_selected'=>1],
        	['goods_id'=>101,'spec_goods_id'=>211,'number'=>11,'is_selected'=>0]
        ];*/
		/*2.添加
		//获取列表数据
		$list=cookie('cart')?:[];
		//加入购物车 一条数据
		//先取出整个数组
		$list=cookie('cart')?:[];
		//判断 存在相同的购物记录（商品id和SKU的id都一样）累加数量；不存在 则添加新记录
		$goods_id=101;
		$spec_goods_id=211;
		$number=20;
		$key=$goods_id.'_'.$spec_goods_id;
		if(isset($list[$key])){
			//存在相同记录 累加数量
			$list[$key]['number']+=$number;
		}else{
			//向数组中添加一条数据
			//否则，添加新的记录
			$list[$key]=[
				'goods_id'=>$goods_id,
				'spec_goods_id'=>$spec_goods_id,
				'number'=>$number,
				'is_selected'=>1
			];
		}
		
		//将新的数组重新保存到cookie
		cookie('cart',$list,86400);//86400表示一天24小时，这一句表示在浏览中存储24小时*/
		/*//3.修改数量、选中状态，修改一条数据
		$goods_id=101;
		$spec_goods_id=211;
		$number=20;
//		$is_selected=1;
		//先取出所有数据
		$list=cookie('cart');
		//拼接下标，表示不重复的记录
		$key=$goods_id.'_'.$spec_goods_id;
		$list[$key]['number']=$number;
		//将新的数组保存到cookie
		cookie('cart',$list,86400);*/
		//4.删除数据
		$goods_id=101;
		$spec_goods_id=211;
		//先取出所有数据
		$list=cookie('cart');
		//拼接下标，表示不重复的记录
		$key=$goods_id.'_'.$spec_goods_id;
		//删除一个键值对
		unset($list[$key]);
		//重新保存新数据
		cookie('cart',$list,86400);
    }

    /**
     * 显示创建资源表单页.
     *
     * @return \think\Response
     */
    public function create()
    {
        //
    }

    /**
     * 保存新建的资源
     *
     * @param  \think\Request  $request
     * @return \think\Response
     */
    public function save(Request $request)
    {
        //
    }

    /**
     * 显示指定的资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function read($id)
    {
        //
    }

    /**
     * 显示编辑资源表单页.
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function edit($id)
    {
        //
    }

    /**
     * 保存更新的资源
     *
     * @param  \think\Request  $request
     * @param  int  $id
     * @return \think\Response
     */
    public function update(Request $request, $id)
    {
        //
    }

    /**
     * 删除指定资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function delete($id)
    {
        //
    }
}
